/*
super用法：
如果子类和父类有同名的成员变量，优先访问自己的
如果要访问父类的成员变量需要super.

不能在静态方法中使用

1.  super.data  在子类当中，访问父类的成员变量
2.  super.func()  在子类当中，访问父类的成员方法
 */


class Base {
    public int a;
    public int b;
    public int c;


    public void mathBase() {
        System.out.println("Base");
    }

}



class Derived extends Base {

    public int c;


    public void mathDerived() {
        System.out.println("Derived");
    }

    public void mathBase() {
        System.out.println("Derived");
    }
    public void func() {

        super.mathBase();//父类成员方法
        mathBase();      //子类成员方法
        mathDerived();   //子类成员方法
    }
    public void func1() {
        //子类有就拿子类的，子类没有就拿父类的
        System.out.println(a);
        System.out.println(b);
        System.out.println(c);//如果子类和父类有同名的成员变量，优先访问自己的
        System.out.println(super.c);//如果要访问父类的成员变量需要super.
    }
}





public class Test1 {


    public static void main(String[] args) {

        Derived derived = new Derived();
        derived.func();
    }
}
